Computer systems commonly employ a host processor or central processing unit (CPU), memory, input/output (I/O) devices, and other devices. Advances in computer system technology have led to the development of computer systems that may include multiple processors to support additional and/or enhanced computing features. For example, in one type of computer system a co-processor may be used in conjunction with a host CPU to perform specific operations, such as, to perform complex mathematical operations, decompress compressed data, decode encoded data, perform graphics processing, process audio signals, etc. The co-processor may, for example, allow certain tasks or operations to be off-loaded from the host CPU while providing specialized hardware to more efficiently perform these tasks as compared to the host (e.g., general purpose) CPU.
Computer systems may include various platform devices (e.g., disk drive, media players, speakers, video output devices, cameras, headsets, and other peripheral components) which may operate with or under the control of a host central processing unit (CPU). During operation of the computer system, interrupts may be generated by these platform devices and transmitted to the CPU in order to communicate with the CPU. Other devices, internal to the computer system, may also generate interrupts
Other advances in computer system technology have led to the development of battery-powered portable computers (e.g., laptop or notebook style computers, hand-held computers, cell phones, smart phones, personal digital assistants (PDA), headsets, music players, and video players, etc.) that are implemented with high-speed processors similar to those implemented in desktop computers. Some of these portable computers may also include multiple processors, such as co-processors. In order to conserve power in these systems, a processor in these systems may in some instances be placed in a low power state or sleep mode when not in active use.